/**
  ******************************************************************************
  * @file    xxx.c 
  * @author  SD Electronics xxx
  * @version V1.0
  * @date    xx-xx-xx
  * @brief   xxxxxxxxxxxxxxxxxx.
  ******************************************************************************
  */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef _SD_APP_032FBL_H
#define _SD_APP_032FBL_H
/* Includes ------------------------------------------------------------------*/
#include "sd_common.h"

/** 
  * @说明  BLE设备硬件配置相关定义 
  */
typedef struct 
{
    PST_POWER_CTRL pst_powerCtrl;

    os_timer_t *HALL_timer;     //霍尔定时器
    os_timer_t *CDN_Delay_timer;     //霍尔定时器
    os_timer_t *Beep_timer;     //蜂鸣器定时器
    os_timer_t *BeepBlink_timer;     //蜂鸣器定时器
    os_timer_t *TIME_timer;     //蜂鸣器定时器
    os_timer_t *LED_timer;     //蜂鸣器定时器

    uint32_t HALL_timer_out;    //定时时间
    uint32_t Beep_timer_out;    //定时时间
    uint32_t TIME_timer_out;    //定时时间
    uint32_t LED_timer_out;    //定时时间

    uint8_t BL_LinkFlag;        //蓝牙连接标志
    uint16_t Vbat;              //电池的电压值
    uint8_t TimeDisplyContinue; //时间继续显示标志
    uint8_t AutoPowerOffTimeOut;   //自动关机时间

    uint32_t CNT_Data;          //CNT数据
    uint32_t TimeData;          //TimeData
    uint32_t CaloriesData;      //卡路里
    uint32_t CDN_Data;          //CDN

    uint8_t DisplayMode;        //需要显示的模式
    uint32_t DisplayData;       //需要显示的数据

    uint8_t HilinkCDNModeStart;       //HiLink下发CDN命令启动
}ST_FBL_CTRL, *PST_FBL_CTRL;

/** 
  * @说明  显示模式 
  */
typedef enum
{
    EN_SHOW_MODE_CNT,
    EN_SHOW_MODE_TIME,
    EN_SHOW_MODE_CAL,
    EN_SHOW_CDN,
}EN_SKIP_MODE;

/** 
  * @说明  显示模式 
  */
typedef enum
{
    EN_HILINK_CDN_START = 0x01,    //启动CDN模式
    EN_HILINK_CDN_NULL = 0x02, //NULL
    
    EN_HILINK_CDN_STOP = 0x03, //CDN模式结束
    EN_HILINK_CDN_RUN = 0x04,    //启动CDN模式
    EN_HILINK_CDN_READY_START = 0x05,    //准备启动CDN模式
}EN_HILINK_CDN;



/** @defgroup FunctionDeclaration
  * @{
  */ 
void SD_APP_032FBL_TaskInit(PST_FBL_CTRL pst_fbl_ctrt);
void SD_PowerOnRun(void);
void SD_PowerOff(PST_POWER_CTRL pstPowerCtrl);
void fbl_display_task_send_event(void);
/**
  * @}
  */ 
#endif
/******************* (C) COPYRIGHT 2011 ShenZhenShiding electronics **************************/
